#ifndef COROUTINE_FACTOR_H
#define COROUTINE_FACTOR_H

#include <memory>
#include <utility>
namespace DBServer {
namespace coroutine {

/// @brief 工厂类
class Factor {
    template<class Type, typename ...Args>
    auto get(Args ...args) -> std::shared_ptr<Type> {
        return std::make_shared<Type>(std::forward(args)...);
    }
};

}   // coroutine
}   // DBServer

#endif // !COROUTINE_FACTOR_H